home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1998 August: Technology Seed / August 1998 ADC Seed CD.toast / Mac OS 8.5b2 / allegro-b2-pseudo-SDK / AIncludes / Gestalt.a < prev    next >
Encoding:
Text File  |  1998-07-17  |  52.9 KB  |  1,193 lines  |  [TEXT/MPS ]

  1. ;
  2. ;    File:        Gestalt.a
  3. ;
  4. ;    Contains:    Gestalt Interfaces.
  5. ;
  6. ;    Version:    Technology:    System 7.5
  7. ;                Release:    Allego Seed, Use with 3.1 Universal Interfaces
  8. ;
  9. ;    Copyright:    © 1988-1998 by Apple Computer, Inc.  All rights reserved
  10. ;
  11. ;    Bugs?:        Please include the the file and version information (from above) with
  12. ;                the problem description.  Developers belonging to one of the Apple
  13. ;                developer programs can submit bug reports to:
  14. ;
  15. ;                    devsupport@apple.com
  16. ;
  17. ;
  18.     IF &TYPE('__GESTALT__') = 'UNDEFINED' THEN
  19. __GESTALT__ SET 1
  20.  
  21.     IF &TYPE('__MACTYPES__') = 'UNDEFINED' THEN
  22.     include 'MacTypes.a'
  23.     ENDIF
  24.     IF &TYPE('__MIXEDMODE__') = 'UNDEFINED' THEN
  25.     include 'MixedMode.a'
  26.     ENDIF
  27.  
  28.  
  29.  
  30.  
  31.  
  32.  
  33. ;
  34. ; pascal OSErr Gestalt(OSType selector, long *response)
  35. ;
  36.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  37.         _Gestalt:    OPWORD    $A1AD
  38.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  39.         IMPORT_CFM_FUNCTION Gestalt
  40.     ENDIF
  41.  
  42. ;
  43. ; pascal OSErr ReplaceGestalt(OSType selector, SelectorFunctionUPP gestaltFunction, SelectorFunctionUPP *oldGestaltFunction)
  44. ;
  45.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  46.         _ReplaceGestalt:    OPWORD    $A5AD
  47.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  48.         IMPORT_CFM_FUNCTION ReplaceGestalt
  49.     ENDIF
  50.  
  51. ;
  52. ; pascal OSErr NewGestalt(OSType selector, SelectorFunctionUPP gestaltFunction)
  53. ;
  54.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  55.         ; parameters:
  56.         ;    selector        => D0
  57.         ;    gestaltFunction => A0
  58.         ; returns:
  59.         ;    OSErr           <= D0
  60.         _NewGestalt:    OPWORD    $A3AD
  61.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  62.         IMPORT_CFM_FUNCTION NewGestalt
  63.     ENDIF
  64.  
  65.  
  66. ;      These functions (and SetGestaltValue) are built into System 7.5,
  67. ;      but not on earlier systems
  68.  
  69.  
  70.  
  71. ;
  72. ; pascal OSErr NewGestaltValue(OSType selector, long newValue)
  73. ;
  74.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  75.         Macro
  76.         _NewGestaltValue
  77.             move.w              #$0401,D0
  78.             dc.w                $ABF1
  79.         EndM
  80.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  81.         IMPORT_CFM_FUNCTION NewGestaltValue
  82.     ENDIF
  83.  
  84. ;
  85. ; pascal OSErr ReplaceGestaltValue(OSType selector, long replacementValue)
  86. ;
  87.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  88.         Macro
  89.         _ReplaceGestaltValue
  90.             move.w              #$0402,D0
  91.             dc.w                $ABF1
  92.         EndM
  93.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  94.         IMPORT_CFM_FUNCTION ReplaceGestaltValue
  95.     ENDIF
  96.  
  97. ;
  98. ; pascal OSErr SetGestaltValue(OSType selector, long newValue)
  99. ;
  100.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  101.         Macro
  102.         _SetGestaltValue
  103.             move.w              #$0404,D0
  104.             dc.w                $ABF1
  105.         EndM
  106.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  107.         IMPORT_CFM_FUNCTION SetGestaltValue
  108.     ENDIF
  109.  
  110. ;
  111. ; pascal OSErr DeleteGestaltValue(OSType selector)
  112. ;
  113.     IF TARGET_OS_MAC ** TARGET_CPU_68K ** ¬ TARGET_RT_MAC_CFM THEN
  114.         Macro
  115.         _DeleteGestaltValue
  116.             move.w              #$0203,D0
  117.             dc.w                $ABF1
  118.         EndM
  119.     ELSEIF TARGET_OS_MAC ** TARGET_RT_MAC_CFM THEN
  120.         IMPORT_CFM_FUNCTION DeleteGestaltValue
  121.     ENDIF
  122.  
  123.  
  124.  
  125. ;  Environment Selectors 
  126.  
  127. gestaltAddressingModeAttr        EQU        'addr'                ; addressing mode attributes 
  128. gestalt32BitAddressing            EQU        0                    ; using 32-bit addressing mode 
  129. gestalt32BitSysZone                EQU        1                    ; 32-bit compatible system zone 
  130. gestalt32BitCapable                EQU        2                    ; Machine is 32-bit capable 
  131.  
  132. gestaltAFPClient                EQU        'afps'
  133. gestaltAFPClientVersionMask        EQU        $0000FFFF            ; low word of long is the 
  134.                                                             ; client version 0x0001 -> 0x0007
  135. gestaltAFPClient3_5                EQU        $0001
  136. gestaltAFPClient3_6                EQU        $0002
  137. gestaltAFPClient3_6_1            EQU        $0003
  138. gestaltAFPClient3_6_2            EQU        $0004
  139. gestaltAFPClient3_6_3            EQU        $0005                ; including 3.6.4, 3.6.5
  140. gestaltAFPClient3_7                EQU        $0006                ; including 3.7.1
  141. gestaltAFPClient3_7_2            EQU        $0007                ; including 3.7.3
  142. gestaltAFPClientAttributeMask    EQU        $FFFF0000            ; high word of long is a 
  143.                                                             ; set of attribute bits
  144. gestaltAFPClientCfgRsrc            EQU        16                    ; Client uses config resources
  145. gestaltAFPClientSupportsIP        EQU        29                    ; Client supports AFP over TCP/IP
  146. gestaltAFPClientVMUI            EQU        30                    ; Client can put up UI from the PBVolMount trap
  147. gestaltAFPClientMultiReq        EQU        31                    ; Client supports multiple outstanding requests
  148.  
  149. gestaltAliasMgrAttr                EQU        'alis'                ; Alias Mgr Attributes 
  150. gestaltAliasMgrPresent            EQU        0                    ; True if the Alias Mgr is present 
  151. gestaltAliasMgrSupportsRemoteAppletalk EQU 1                ; True if the Alias Mgr knows about Remote Appletalk 
  152. gestaltAliasMgrSupportsAOCEKeychain EQU    2                    ; True if the Alias Mgr knows about the AOCE Keychain 
  153. gestaltAliasMgrResolveAliasFileWithMountOptions EQU 3        ; True if the Alias Mgr implements gestaltAliasMgrResolveAliasFileWithMountOptions() and IsAliasFile() 
  154.  
  155. gestaltArbitorAttr                EQU        'arb '
  156. gestaltSerialArbitrationExists    EQU        0                    ; this bit if the serial port arbitrator exists
  157.  
  158. gestaltAppleScriptVersion        EQU        'ascv'                ; AppleScript version
  159.  
  160. gestaltAppleScriptAttr            EQU        'ascr'                ; AppleScript attributes
  161. gestaltAppleScriptPresent        EQU        0
  162. gestaltAppleScriptPowerPCSupport EQU    1
  163.  
  164. gestaltATAAttr                    EQU        'ata '                ; ATA is the driver to support IDE hard disks 
  165. gestaltATAPresent                EQU        0                    ; if set, ATA Manager is present 
  166.  
  167. gestaltATalkVersion                EQU        'atkv'                ; Detailed AppleTalk version; see comment above for format 
  168.  
  169. gestaltAppleTalkVersion            EQU        'atlk'                ; appletalk version 
  170. ;    FORMAT OF gestaltATalkVersion RESPONSE
  171. ;    --------------------------------------
  172. ;    The version is stored in the high three bytes of the response value.  Let us number
  173. ;    the bytes in the response value from 0 to 3, where 0 is the least-significant byte.
  174. ;
  175. ;        Byte#:       3 2 1 0
  176. ;        Value:    0xMMNNRR00
  177. ;
  178. ;    Byte 3 (MM) contains the major revision number, byte 2 (NN) contains the minor
  179. ;    revision number, and byte 1 (RR) contains a constant that represents the release
  180. ;    stage.  Byte 0 always contains 0x00.  The constants for the release stages are:
  181. ;
  182. ;        development = 0x20
  183. ;        alpha        = 0x40
  184. ;        beta        = 0x60
  185. ;        final        = 0x80
  186. ;        release        = 0x80
  187. ;
  188. ;    For example, if you call Gestalt with the 'atkv' selector when AppleTalk version 57
  189. ;    is loaded, you receive the long integer response value 0x39008000.
  190. ;
  191.  
  192.  
  193. gestaltAUXVersion                EQU        'a/ux'                ; a/ux version, if present 
  194.  
  195. gestaltMacOSCompatibilityBoxAttr EQU    'bbox'                ; Blue Box presence and features 
  196. gestaltMacOSCompatibilityBoxPresent EQU    0                    ; True if running under the Blue Box 
  197. gestaltMacOSCompatibilityBoxHasSerial EQU 1                    ; True if Blue Box serial support is implemented. 
  198.  
  199. gestaltBusClkSpeed                EQU        'bclk'                ; main I/O bus clock speed in hertz 
  200.  
  201. gestaltCloseViewAttr            EQU        'BSDa'                ; CloseView attributes 
  202. gestaltCloseViewEnabled            EQU        0                    ; Closeview enabled (dynamic bit - returns current state) 
  203. gestaltCloseViewDisplayMgrFriendly EQU    1                    ; Closeview compatible with Display Manager (FUTURE) 
  204.  
  205. gestaltCFMAttr                    EQU        'cfrg'                ; returns information about the Code Fragment Manager 
  206. gestaltCFMPresent                EQU        0                    ; true if the Code Fragment Manager is present 
  207.  
  208. gestaltCollectionMgrVersion        EQU        'cltn'                ; Collection Manager version 
  209.  
  210. gestaltColorMatchingAttr        EQU        'cmta'                ; ColorSync attributes 
  211. gestaltHighLevelMatching        EQU        0
  212. gestaltColorMatchingLibLoaded    EQU        1
  213.  
  214. gestaltColorMatchingVersion        EQU        'cmtc'
  215. gestaltColorSync10                EQU        $0100                ; 0x0100 & 0x0110 _Gestalt versions for 1.0-1.0.3 product 
  216. gestaltColorSync11                EQU        $0110                ;   0x0100 == low-level matching only 
  217. gestaltColorSync104                EQU        $0104                ; Real version, by popular demand 
  218. gestaltColorSync105                EQU        $0105
  219. gestaltColorSync20                EQU        $0200                ; ColorSync 2.0 
  220. gestaltColorSync21                EQU        $0210
  221. gestaltColorSync211                EQU        $0211
  222. gestaltColorSync212                EQU        $0212
  223. gestaltColorSync213                EQU        $0213
  224. gestaltColorSync25                EQU        $0250
  225.  
  226. gestaltConnMgrAttr                EQU        'conn'                ; connection mgr attributes    
  227. gestaltConnMgrPresent            EQU        0
  228. gestaltConnMgrCMSearchFix        EQU        1                    ; Fix to CMAddSearch?     
  229. gestaltConnMgrErrorString        EQU        2                    ; has CMGetErrorString() 
  230. gestaltConnMgrMultiAsyncIO        EQU        3                    ; CMNewIOPB, CMDisposeIOPB, CMPBRead, CMPBWrite, CMPBIOKill 
  231.  
  232. gestaltColorPickerVersion        EQU        'cpkr'                ; returns version of ColorPicker 
  233. gestaltColorPicker                EQU        'cpkr'                ; gestaltColorPicker is old name for gestaltColorPickerVersion 
  234.  
  235. gestaltComponentMgr                EQU        'cpnt'                ; Component Mgr version 
  236. ;    The gestaltNativeCPUtype ('cput') selector can be used to determine the
  237. ;    native CPU type for all Macs running System 7.5 or later.
  238. ;
  239. ;    The 'cput' selector is not available when running System 7.0 (or earlier)
  240. ;    on most 68K machines.  If 'cput' is not available, then the 'proc' selector
  241. ;    should be used to determine the processor type.
  242. ;
  243. ;    An application should always try the 'cput' selector first.  This is because,
  244. ;    on PowerPC machines, the 'proc' selector will reflect the CPU type of the
  245. ;    emulator's "virtual processor" rather than the native CPU type.
  246. ;
  247. ;    The values specified below are accurate.  Prior versions of the Gestalt
  248. ;    interface file contained values that were off by one.
  249. ;
  250. ;    The Quadra 840AV and the Quadra 660AV contain a bug in the ROM code that
  251. ;    causes the 'cput' selector to respond with the value 5.  This behavior
  252. ;    occurs only when running System 7.1.  System 7.5 fixes the bug by replacing
  253. ;    the faulty 'cput' selector function with the correct one.
  254. ;
  255. ;    The gestaltNativeCPUfamily ('cpuf') selector can be used to determine the
  256. ;    general family the native CPU is in. This can be helpful for determing how
  257. ;    blitters and things should be written. In general, it is smarter to use this
  258. ;    selector (when available) than gestaltNativeCPUtype since newer processors
  259. ;    in the same family can be handled without revising your code.
  260. ;
  261. ;    gestaltNativeCPUfamily uses the same results as gestaltNativeCPUtype, but
  262. ;    will only return certain CPU values.
  263. ;
  264.  
  265.  
  266. gestaltNativeCPUtype            EQU        'cput'                ; Native CPU type                                       
  267. gestaltNativeCPUfamily            EQU        'cpuf'                ; Native CPU family                                  
  268. gestaltCPU68000                    EQU        0                    ; Various 68k CPUs...     
  269. gestaltCPU68010                    EQU        1
  270. gestaltCPU68020                    EQU        2
  271. gestaltCPU68030                    EQU        3
  272. gestaltCPU68040                    EQU        4
  273. gestaltCPU601                    EQU        $0101                ; IBM 601                                                 
  274. gestaltCPU603                    EQU        $0103
  275. gestaltCPU604                    EQU        $0104
  276. gestaltCPU603e                    EQU        $0106
  277. gestaltCPU603ev                    EQU        $0107
  278. gestaltCPU750                    EQU        $0108                ; Also 740 - "G3" 
  279. gestaltCPU604e                    EQU        $0109
  280. gestaltCPU604ev                    EQU        $010A                ; Mach 5, 250Mhz and up 
  281.  
  282. gestaltCRMAttr                    EQU        'crm '                ; comm resource mgr attributes 
  283. gestaltCRMPresent                EQU        0
  284. gestaltCRMPersistentFix            EQU        1                    ; fix for persistent tools 
  285. gestaltCRMToolRsrcCalls            EQU        2                    ; has CRMGetToolResource/ReleaseToolResource 
  286.  
  287. gestaltControlStripVersion        EQU        'csvr'                ; Control Strip version (was 'sdvr') 
  288.  
  289. gestaltCTBVersion                EQU        'ctbv'                ; CommToolbox version 
  290.  
  291. gestaltDBAccessMgrAttr            EQU        'dbac'                ; Database Access Mgr attributes 
  292. gestaltDBAccessMgrPresent        EQU        0                    ; True if Database Access Mgr present 
  293.  
  294. gestaltSDPFindVersion            EQU        'dfnd'                ; OCE Standard Directory Panel
  295.  
  296. gestaltDictionaryMgrAttr        EQU        'dict'                ; Dictionary Manager attributes 
  297. gestaltDictionaryMgrPresent        EQU        0                    ; Dictionary Manager attributes 
  298.  
  299. gestaltDITLExtAttr                EQU        'ditl'                ; AppenDITL, etc. calls from CTB 
  300. gestaltDITLExtPresent            EQU        0                    ; True if calls are present 
  301. gestaltDITLExtSupportsIctb        EQU        1                    ; True if AppendDITL, ShortenDITL support 'ictb's 
  302.  
  303. gestaltDesktopPicturesAttr        EQU        'dkpx'                ; Desktop Pictures attributes 
  304. gestaltDesktopPicturesInstalled    EQU        0                    ; True if control panel is installed 
  305. gestaltDesktopPicturesDisplayed    EQU        1                    ; True if a picture is currently displayed 
  306.  
  307. gestaltDisplayMgrVers            EQU        'dplv'                ; Display Manager version 
  308.  
  309. gestaltDisplayMgrAttr            EQU        'dply'                ; Display Manager attributes 
  310. gestaltDisplayMgrPresent        EQU        0                    ; True if Display Mgr is present 
  311. gestaltDisplayMgrCanSwitchMirrored EQU    2                    ; True if Display Mgr can switch modes on mirrored displays 
  312. gestaltDisplayMgrSetDepthNotifies EQU    3                    ; True SetDepth generates displays mgr notification 
  313. gestaltDisplayMgrCanConfirm        EQU        4                    ; True Display Manager supports DMConfirmConfiguration 
  314. gestaltDisplayMgrColorSyncAware    EQU        5                    ; True if Display Manager supports profiles for displays 
  315.  
  316. gestaltDragMgrAttr                EQU        'drag'                ; Drag Manager attributes 
  317. gestaltDragMgrPresent            EQU        0                    ; Drag Manager is present 
  318. gestaltDragMgrFloatingWind        EQU        1                    ; Drag Manager supports floating windows 
  319. gestaltPPCDragLibPresent        EQU        2                    ; Drag Manager PPC DragLib is present 
  320. gestaltDragMgrHasImageSupport    EQU        3                    ; Drag Manager allows SetDragImage call 
  321. gestaltCanStartDragInFloatWindow EQU    4                    ; Drag Manager supports starting a drag in a floating window 
  322.  
  323. gestaltDigitalSignatureVersion    EQU        'dsig'                ; returns Digital Signature Toolbox version in low-order word
  324.  
  325. gestaltEasyAccessAttr            EQU        'easy'                ; Easy Access attributes 
  326. gestaltEasyAccessOff            EQU        0                    ; if Easy Access present, but off (no icon) 
  327. gestaltEasyAccessOn                EQU        1                    ; if Easy Access "On" 
  328. gestaltEasyAccessSticky            EQU        2                    ; if Easy Access "Sticky" 
  329. gestaltEasyAccessLocked            EQU        3                    ; if Easy Access "Locked" 
  330.  
  331. gestaltEditionMgrAttr            EQU        'edtn'                ; Edition Mgr attributes 
  332. gestaltEditionMgrPresent        EQU        0                    ; True if Edition Mgr present 
  333. gestaltEditionMgrTranslationAware EQU    1                    ; True if edition manager is translation manager aware 
  334.  
  335. gestaltAppleEventsAttr            EQU        'evnt'                ; Apple Events attributes 
  336. gestaltAppleEventsPresent        EQU        0                    ; True if Apple Events present 
  337. gestaltScriptingSupport            EQU        1
  338. gestaltOSLInSystem                EQU        2                    ; OSL is in system so don’t use the one linked in to app 
  339.  
  340. gestaltExtensionTableVersion    EQU        'etbl'                ; ExtensionTable version 
  341.  
  342. gestaltFloppyAttr                EQU        'flpy'                ; Floppy disk drive/driver attributes 
  343. gestaltFloppyIsMFMOnly            EQU        0                    ; Floppy driver only supports MFM disk formats 
  344. gestaltFloppyIsManualEject        EQU        1                    ; Floppy drive, driver, and file system are in manual-eject mode 
  345. gestaltFloppyUsesDiskInPlace    EQU        2                    ; Floppy drive must have special DISK-IN-PLACE output; standard DISK-CHANGED not used 
  346.  
  347. gestaltFinderAttr                EQU        'fndr'                ; Finder attributes 
  348. gestaltFinderDropEvent            EQU        0                    ; Finder recognizes drop event 
  349. gestaltFinderMagicPlacement        EQU        1                    ; Finder supports magic icon placement 
  350. gestaltFinderCallsAEProcess        EQU        2                    ; Finder calls AEProcessAppleEvent 
  351. gestaltOSLCompliantFinder        EQU        3                    ; Finder is scriptable and recordable 
  352. gestaltFinderSupports4GBVolumes    EQU        4                    ; Finder correctly handles 4GB volumes 
  353. gestaltFinderHasClippings        EQU        6                    ; Finder supports Drag Manager clipping files 
  354. gestaltFinderFullDragManagerSupport EQU    7                    ; Finder accepts 'hfs ' flavors properly 
  355. gestaltFinderFloppyRootComments    EQU        8                    ; in MacOS 8 and later, will be set if Finder ever supports comments on Floppy icons 
  356. gestaltFinderLargeAndNotSavedFlavorsOK EQU 9                ; in MacOS 8 and later, this bit is set if drags with >1024-byte flavors and flavorNotSaved flavors work reliably 
  357. gestaltFinderUsesExtensibleFolderManager EQU 10                ; Finder uses Extensible Folder Manager (for example, for Magic Routing) 
  358.  
  359. gestaltFindFolderAttr            EQU        'fold'                ; Folder Mgr attributes 
  360. gestaltFindFolderPresent        EQU        0                    ; True if Folder Mgr present 
  361. gestaltFolderDescSupport        EQU        1                    ; Tru if Folder Mgr has FolderDesc calls 
  362.  
  363.  
  364. gestaltFontMgrAttr                EQU        'font'                ; Font Mgr attributes 
  365. gestaltOutlineFonts                EQU        0                    ; True if Outline Fonts supported 
  366.  
  367. gestaltFPUType                    EQU        'fpu '                ; fpu type 
  368. gestaltNoFPU                    EQU        0                    ; no FPU 
  369. gestalt68881                    EQU        1                    ; 68881 FPU 
  370. gestalt68882                    EQU        2                    ; 68882 FPU 
  371. gestalt68040FPU                    EQU        3                    ; 68040 built-in FPU 
  372.  
  373. gestaltFSAttr                    EQU        'fs  '                ; file system attributes 
  374. gestaltFullExtFSDispatching        EQU        0                    ; has really cool new HFSDispatch dispatcher 
  375. gestaltHasFSSpecCalls            EQU        1                    ; has FSSpec calls 
  376. gestaltHasFileSystemManager        EQU        2                    ; has a file system manager 
  377. gestaltFSMDoesDynamicLoad        EQU        3                    ; file system manager supports dynamic loading 
  378. gestaltFSSupports4GBVols        EQU        4                    ; file system supports 4 gigabyte volumes 
  379. gestaltFSSupports2TBVols        EQU        5                    ; file system supports 2 terabyte volumes 
  380. gestaltHasExtendedDiskInit        EQU        6                    ; has extended Disk Initialization calls 
  381. gestaltDTMgrSupportsFSM            EQU        7                    ; Desktop Manager support FSM-based foreign file systems 
  382. gestaltFSNoMFSVols                EQU        8                    ; file system doesn't supports MFS volumes 
  383. gestaltFSSupportsHFSPlusVols    EQU        9                    ; file system supports HFS Plus volumes 
  384. gestaltFSIncompatibleDFA82        EQU        10                    ; VCB and FCB structures changed; DFA 8.2 is incompatible 
  385.  
  386. gestaltAdminFeaturesFlagsAttr    EQU        'fred'                ; a set of admin flags, mostly useful internally. 
  387. gestaltFinderUsesSpecialOpenFoldersFile EQU 0                ; the Finder uses a special file to store the list of open folders 
  388.  
  389. gestaltFSMVersion                EQU        'fsm '                ; returns version of HFS External File Systems Manager (FSM) 
  390.  
  391. gestaltFXfrMgrAttr                EQU        'fxfr'                ; file transfer manager attributes 
  392. gestaltFXfrMgrPresent            EQU        0
  393. gestaltFXfrMgrMultiFile            EQU        1                    ; supports FTSend and FTReceive 
  394. gestaltFXfrMgrErrorString        EQU        2                    ; supports FTGetErrorString 
  395. gestaltFXfrMgrAsync                EQU        3                    ;supports FTSendAsync, FTReceiveAsync, FTCompletionAsync
  396.  
  397. gestaltGraphicsAttr                EQU        'gfxa'                ; Quickdraw GX attributes selector 
  398. gestaltGraphicsIsDebugging        EQU        $00000001
  399. gestaltGraphicsIsLoaded            EQU        $00000002
  400. gestaltGraphicsIsPowerPC        EQU        $00000004
  401.  
  402. gestaltGraphicsVersion            EQU        'grfx'                ; Quickdraw GX version selector 
  403. gestaltCurrentGraphicsVersion    EQU        $00010200            ; the version described in this set of headers 
  404.  
  405. gestaltHardwareAttr                EQU        'hdwr'                ; hardware attributes 
  406. gestaltHasVIA1                    EQU        0                    ; VIA1 exists 
  407. gestaltHasVIA2                    EQU        1                    ; VIA2 exists 
  408. gestaltHasASC                    EQU        3                    ; Apple Sound Chip exists 
  409. gestaltHasSCC                    EQU        4                    ; SCC exists 
  410. gestaltHasSCSI                    EQU        7                    ; SCSI exists 
  411. gestaltHasSoftPowerOff            EQU        19                    ; Capable of software power off 
  412. gestaltHasSCSI961                EQU        21                    ; 53C96 SCSI controller on internal bus 
  413. gestaltHasSCSI962                EQU        22                    ; 53C96 SCSI controller on external bus 
  414. gestaltHasUniversalROM            EQU        24                    ; Do we have a Universal ROM? 
  415. gestaltHasEnhancedLtalk            EQU        30                    ; Do we have Enhanced LocalTalk? 
  416.  
  417. gestaltHelpMgrAttr                EQU        'help'                ; Help Mgr Attributes 
  418. gestaltHelpMgrPresent            EQU        0                    ; true if help mgr is present 
  419. gestaltHelpMgrExtensions        EQU        1                    ; true if help mgr extensions are installed 
  420. gestaltAppleGuideIsDebug        EQU        30
  421. gestaltAppleGuidePresent        EQU        31                    ; true if AppleGuide is installed 
  422.  
  423. gestaltHardwareVendorCode        EQU        'hrad'                ; Returns hardware vendor information 
  424. gestaltHardwareVendorApple        EQU        'Appl'                ; Hardware built by Apple 
  425.  
  426. gestaltCompressionMgr            EQU        'icmp'                ; returns version of the Image Compression Manager 
  427.  
  428. gestaltIconUtilitiesAttr        EQU        'icon'                ; Icon Utilities attributes  (Note: available in System 7.0, despite gestalt) 
  429. gestaltIconUtilitiesPresent        EQU        0                    ; true if icon utilities are present 
  430. gestaltIconUtilitiesHas48PixelIcons EQU    1                    ; true if 48x48 icons are supported by IconUtilities 
  431. gestaltIconUtilitiesHas32BitIcons EQU    2                    ; true if 32-bit deep icons are supported 
  432. gestaltIconUtilitiesHas8BitDeepMasks EQU 3                    ; true if 8-bit deep masks are supported 
  433. gestaltIconUtilitiesHasIconServices EQU    4                    ; true if IconServices is present 
  434.  
  435. gestaltInternalDisplay            EQU        'idsp'                ; slot number of internal display location 
  436. ;    To obtain information about the connected keyboard(s), one should
  437. ;    use the ADB Manager API.  See Technical Note OV16 for details.
  438. ;
  439.  
  440.  
  441. gestaltKeyboardType                EQU        'kbd '                ; keyboard type 
  442. gestaltMacKbd                    EQU        1
  443. gestaltMacAndPad                EQU        2
  444. gestaltMacPlusKbd                EQU        3
  445. gestaltExtADBKbd                EQU        4
  446. gestaltStdADBKbd                EQU        5
  447. gestaltPrtblADBKbd                EQU        6
  448. gestaltPrtblISOKbd                EQU        7
  449. gestaltStdISOADBKbd                EQU        8
  450. gestaltExtISOADBKbd                EQU        9
  451. gestaltADBKbdII                    EQU        10
  452. gestaltADBISOKbdII                EQU        11
  453. gestaltPwrBookADBKbd            EQU        12
  454. gestaltPwrBookISOADBKbd            EQU        13
  455. gestaltAppleAdjustKeypad        EQU        14
  456. gestaltAppleAdjustADBKbd        EQU        15
  457. gestaltAppleAdjustISOKbd        EQU        16
  458. gestaltJapanAdjustADBKbd        EQU        17                    ; Japan Adjustable Keyboard 
  459. gestaltPwrBkExtISOKbd            EQU        20                    ; PowerBook Extended International Keyboard with function keys 
  460. gestaltPwrBkExtJISKbd            EQU        21                    ; PowerBook Extended Japanese Keyboard with function keys         
  461. gestaltPwrBkExtADBKbd            EQU        24                    ; PowerBook Extended Domestic Keyboard with function keys         
  462. gestaltPS2Keyboard                EQU        27                    ; PS2 keyboard 
  463. gestaltPwrBkSubDomKbd            EQU        28                    ; PowerBook Subnote Domestic Keyboard with function keys w/  inverted T     
  464. gestaltPwrBkSubISOKbd            EQU        29                    ; PowerBook Subnote International Keyboard with function keys w/  inverted T     
  465. gestaltPwrBkSubJISKbd            EQU        30                    ; PowerBook Subnote Japanese Keyboard with function keys w/ inverted T         
  466. gestaltPwrBkEKDomKbd            EQU        195                    ; (0xC3) PowerBook Domestic Keyboard with Embedded Keypad, function keys & inverted T     
  467. gestaltPwrBkEKISOKbd            EQU        196                    ; (0xC4) PowerBook International Keyboard with Embedded Keypad, function keys & inverted T     
  468. gestaltPwrBkEKJISKbd            EQU        197                    ; (0xC5) PowerBook Japanese Keyboard with Embedded Keypad, function keys & inverted T         
  469. gestaltUSBCosmoANSIKbd            EQU        198                    ; (0xC6) Cosmo USB Domestic (ANSI) Keyboard 
  470. gestaltUSBCosmoISOKbd            EQU        199                    ; (0xC7) Cosmo USB International (ISO) Keyboard 
  471. gestaltUSBCosmoJISKbd            EQU        200                    ; (0xC8) Cosmo USB Japanese (JIS) Keyboard 
  472.  
  473. gestaltLowMemorySize            EQU        'lmem'                ; size of low memory area 
  474.  
  475. gestaltLogicalRAMSize            EQU        'lram'                ; logical ram size 
  476. ;    MACHINE TYPE CONSTANTS NAMING CONVENTION
  477. ;
  478. ;        All future machine type constant names take the following form:
  479. ;
  480. ;            gestalt<lineName><modelNumber>
  481. ;
  482. ;    Line Names
  483. ;
  484. ;        The following table contains the lines currently produced by Apple and the
  485. ;        lineName substrings associated with them:
  486. ;
  487. ;            Line                        lineName
  488. ;            -------------------------    ------------
  489. ;            Macintosh LC                "MacLC"
  490. ;            Macintosh Performa            "Performa"
  491. ;            Macintosh PowerBook            "PowerBook"
  492. ;            Macintosh PowerBook Duo        "PowerBookDuo"
  493. ;            Power Macintosh                "PowerMac"
  494. ;            Apple Workgroup Server        "AWS"
  495. ;
  496. ;        The following table contains lineNames for some discontinued lines:
  497. ;
  498. ;            Line                        lineName
  499. ;            -------------------------    ------------
  500. ;            Macintosh Quadra            "MacQuadra" (preferred)
  501. ;                                        "Quadra" (also used, but not preferred)
  502. ;            Macintosh Centris            "MacCentris"
  503. ;
  504. ;    Model Numbers
  505. ;
  506. ;        The modelNumber is a string representing the specific model of the machine
  507. ;        within its particular line.  For example, for the Power Macintosh 8100/80,
  508. ;        the modelNumber is "8100".
  509. ;
  510. ;        Some Performa & LC model numbers contain variations in the rightmost 1 or 2
  511. ;        digits to indicate different RAM and Hard Disk configurations.  A single
  512. ;        machine type is assigned for all variations of a specific model number.  In
  513. ;        this case, the modelNumber string consists of the constant leftmost part
  514. ;        of the model number with 0s for the variant digits.  For example, the
  515. ;        Performa 6115 and Performa 6116 are both return the same machine type
  516. ;        constant:  gestaltPerforma6100.
  517. ;
  518. ;
  519. ;    OLD NAMING CONVENTIONS
  520. ;
  521. ;    The "Underscore Speed" suffix
  522. ;
  523. ;        In the past, Apple differentiated between machines that had the same model
  524. ;        number but different speeds.  For example, the Power Macintosh 8100/80 and
  525. ;        Power Macintosh 8100/100 return different machine type constants.  This is
  526. ;        why some existing machine type constant names take the form:
  527. ;
  528. ;            gestalt<lineName><modelNumber>_<speed>
  529. ;
  530. ;        e.g.
  531. ;
  532. ;            gestaltPowerMac8100_110
  533. ;            gestaltPowerMac7100_80
  534. ;            gestaltPowerMac7100_66
  535. ;
  536. ;        It is no longer necessary to use the "underscore speed" suffix.  Starting with
  537. ;        the Power Surge machines (Power Macintosh 7200, 7500, 8500 and 9500), speed is
  538. ;        no longer used to differentiate between machine types.  This is why a Power
  539. ;        Macintosh 7200/75 and a Power Macintosh 7200/90 return the same machine type
  540. ;        constant:  gestaltPowerMac7200.
  541. ;
  542. ;    The "Screen Type" suffix
  543. ;
  544. ;        All PowerBook models prior to the PowerBook 190, and all PowerBook Duo models
  545. ;        before the PowerBook Duo 2300 take the form:
  546. ;
  547. ;            gestalt<lineName><modelNumber><screenType>
  548. ;
  549. ;        Where <screenType> is "c" or the empty string.
  550. ;
  551. ;        e.g.
  552. ;
  553. ;            gestaltPowerBook100
  554. ;            gestaltPowerBookDuo280
  555. ;            gestaltPowerBookDuo280c
  556. ;            gestaltPowerBook180
  557. ;            gestaltPowerBook180c
  558. ;
  559. ;        Starting with the PowerBook 190 series and the PowerBook Duo 2300 series, machine
  560. ;        types are no longer differentiated based on screen type.  This is why a PowerBook
  561. ;        5300cs/100 and a PowerBook 5300c/100 both return the same machine type constant:
  562. ;        gestaltPowerBook5300.
  563. ;
  564. ;        Macintosh LC 630                gestaltMacLC630
  565. ;        Macintosh Performa 6200            gestaltPerforma6200
  566. ;        Macintosh Quadra 700            gestaltQuadra700
  567. ;        Macintosh PowerBook 5300        gestaltPowerBook5300
  568. ;        Macintosh PowerBook Duo 2300    gestaltPowerBookDuo2300
  569. ;        Power Macintosh 8500            gestaltPowerMac8500
  570. ;
  571.  
  572.  
  573.  
  574. gestaltMachineType                EQU        'mach'                ; machine type 
  575. gestaltClassic                    EQU        1
  576. gestaltMacXL                    EQU        2
  577. gestaltMac512KE                    EQU        3
  578. gestaltMacPlus                    EQU        4
  579. gestaltMacSE                    EQU        5
  580. gestaltMacII                    EQU        6
  581. gestaltMacIIx                    EQU        7
  582. gestaltMacIIcx                    EQU        8
  583. gestaltMacSE030                    EQU        9
  584. gestaltPortable                    EQU        10
  585. gestaltMacIIci                    EQU        11
  586. gestaltPowerMac8100_120            EQU        12
  587. gestaltMacIIfx                    EQU        13
  588. gestaltMacClassic                EQU        17
  589. gestaltMacIIsi                    EQU        18
  590. gestaltMacLC                    EQU        19
  591. gestaltMacQuadra900                EQU        20
  592. gestaltPowerBook170                EQU        21
  593. gestaltMacQuadra700                EQU        22
  594. gestaltClassicII                EQU        23
  595. gestaltPowerBook100                EQU        24
  596. gestaltPowerBook140                EQU        25
  597. gestaltMacQuadra950                EQU        26
  598. gestaltMacLCIII                    EQU        27
  599. gestaltPerforma450                EQU        27
  600. gestaltPowerBookDuo210            EQU        29
  601. gestaltMacCentris650            EQU        30
  602. gestaltPowerBookDuo230            EQU        32
  603. gestaltPowerBook180                EQU        33
  604. gestaltPowerBook160                EQU        34
  605. gestaltMacQuadra800                EQU        35
  606. gestaltMacQuadra650                EQU        36
  607. gestaltMacLCII                    EQU        37
  608. gestaltPowerBookDuo250            EQU        38
  609. gestaltAWS9150_80                EQU        39
  610. gestaltPowerMac8100_110            EQU        40
  611. gestaltAWS8150_110                EQU        40
  612. gestaltPowerMac5200                EQU        41
  613. gestaltPowerMac5260                EQU        41
  614. gestaltPerforma5300                EQU        41
  615. gestaltPowerMac6200                EQU        42
  616. gestaltPerforma6300                EQU        42
  617. gestaltMacIIvi                    EQU        44
  618. gestaltMacIIvm                    EQU        45
  619. gestaltPerforma600                EQU        45
  620. gestaltPowerMac7100_80            EQU        47
  621. gestaltMacIIvx                    EQU        48
  622. gestaltMacColorClassic            EQU        49
  623. gestaltPerforma250                EQU        49
  624. gestaltPowerBook165c            EQU        50
  625. gestaltMacCentris610            EQU        52
  626. gestaltMacQuadra610                EQU        53
  627. gestaltPowerBook145                EQU        54
  628. gestaltPowerMac8100_100            EQU        55
  629. gestaltMacLC520                    EQU        56
  630. gestaltAWS9150_120                EQU        57
  631. gestaltPowerMac6400                EQU        58
  632. gestaltPerforma6400                EQU        58
  633. gestaltPerforma6360                EQU        58
  634. gestaltMacCentris660AV            EQU        60
  635. gestaltMacQuadra660AV            EQU        60
  636. gestaltPerforma46x                EQU        62
  637. gestaltPowerMac8100_80            EQU        65
  638. gestaltAWS8150_80                EQU        65
  639. gestaltPowerMac9500                EQU        67
  640. gestaltPowerMac9600                EQU        67
  641. gestaltPowerMac7500                EQU        68
  642. gestaltPowerMac7600                EQU        68
  643. gestaltPowerMac8500                EQU        69
  644. gestaltPowerMac8600                EQU        69
  645. gestaltAWS8550                    EQU        68
  646. gestaltPowerBook180c            EQU        71
  647. gestaltPowerBook520                EQU        72
  648. gestaltPowerBook520c            EQU        72
  649. gestaltPowerBook540                EQU        72
  650. gestaltPowerBook540c            EQU        72
  651. gestaltPowerMac5400                EQU        74
  652. gestaltPowerMac6100_60            EQU        75
  653. gestaltAWS6150_60                EQU        75
  654. gestaltPowerBookDuo270c            EQU        77
  655. gestaltMacQuadra840AV            EQU        78
  656. gestaltPerforma550                EQU        80
  657. gestaltPowerBook165                EQU        84
  658. gestaltPowerBook190                EQU        85
  659. gestaltMacTV                    EQU        88
  660. gestaltMacLC475                    EQU        89
  661. gestaltPerforma47x                EQU        89
  662. gestaltMacLC575                    EQU        92
  663. gestaltMacQuadra605                EQU        94
  664. gestaltMacQuadra630                EQU        98
  665. gestaltMacLC580                    EQU        99
  666. gestaltPerforma580                EQU        99
  667. gestaltPowerMac6100_66            EQU        100
  668. gestaltAWS6150_66                EQU        100
  669. gestaltPowerBookDuo280            EQU        102
  670. gestaltPowerBookDuo280c            EQU        103
  671. gestaltPowerMacLC475            EQU        104                    ; Mac LC 475 & PPC Processor Upgrade Card
  672. gestaltPowerMacPerforma47x        EQU        104
  673. gestaltPowerMacLC575            EQU        105                    ; Mac LC 575 & PPC Processor Upgrade Card 
  674. gestaltPowerMacPerforma57x        EQU        105
  675. gestaltPowerMacQuadra630        EQU        106                    ; Quadra 630 & PPC Processor Upgrade Card
  676. gestaltPowerMacLC630            EQU        106                    ; Mac LC 630 & PPC Processor Upgrade Card
  677. gestaltPowerMacPerforma63x        EQU        106                    ; Performa 63x & PPC Processor Upgrade Card
  678. gestaltPowerMac7200                EQU        108
  679. gestaltPowerMac7300                EQU        109
  680. gestaltPowerMac7100_66            EQU        112
  681. gestaltPowerBook150                EQU        115
  682. gestaltPowerMacQuadra700        EQU        116                    ; Quadra 700 & Power PC Upgrade Card
  683. gestaltPowerMacQuadra900        EQU        117                    ; Quadra 900 & Power PC Upgrade Card 
  684. gestaltPowerMacQuadra950        EQU        118                    ; Quadra 950 & Power PC Upgrade Card 
  685. gestaltPowerMacCentris610        EQU        119                    ; Centris 610 & Power PC Upgrade Card 
  686. gestaltPowerMacCentris650        EQU        120                    ; Centris 650 & Power PC Upgrade Card 
  687. gestaltPowerMacQuadra610        EQU        121                    ; Quadra 610 & Power PC Upgrade Card 
  688. gestaltPowerMacQuadra650        EQU        122                    ; Quadra 650 & Power PC Upgrade Card 
  689. gestaltPowerMacQuadra800        EQU        123                    ; Quadra 800 & Power PC Upgrade Card 
  690. gestaltPowerBookDuo2300            EQU        124
  691. gestaltPowerBook500PPCUpgrade    EQU        126
  692. gestaltPowerBook5300            EQU        128
  693. gestaltPowerBook1400            EQU        310
  694. gestaltPowerBook3400            EQU        306
  695. gestaltPowerBook2400            EQU        307
  696. gestaltPowerBookG3Series        EQU        312
  697. gestaltPowerBookG3                EQU        313
  698. gestaltPowerBookG3Series2        EQU        314
  699. gestaltPowerMacG3                EQU        510
  700. gestaltPowerMac5500                EQU        512
  701. gestalt20thAnniversary            EQU        512
  702. gestaltPowerMac6500                EQU        513
  703. gestaltPowerMac4400_160            EQU        514                    ; slower machine has different machine ID
  704. gestaltPowerMac4400                EQU        515
  705.  
  706.  
  707. gestaltQuadra605                EQU        94
  708. gestaltQuadra610                EQU        53
  709. gestaltQuadra630                EQU        98
  710. gestaltQuadra650                EQU        36
  711. gestaltQuadra660AV                EQU        60
  712. gestaltQuadra700                EQU        22
  713. gestaltQuadra800                EQU        35
  714. gestaltQuadra840AV                EQU        78
  715. gestaltQuadra900                EQU        20
  716. gestaltQuadra950                EQU        26
  717.  
  718. kMachineNameStrID                EQU        -16395
  719.  
  720. gestaltSMPMailerVersion            EQU        'malr'                ; OCE StandardMail
  721.  
  722. gestaltMediaBay                    EQU        'mbeh'                ; media bay driver type 
  723. gestaltMBLegacy                    EQU        0                    ; media bay support in PCCard 2.0 
  724. gestaltMBSingleBay                EQU        1                    ; single bay media bay driver 
  725. gestaltMBMultipleBays            EQU        2                    ; multi-bay media bay driver 
  726.  
  727. gestaltMessageMgrVersion        EQU        'mess'                ; GX Printing Message Manager Gestalt Selector 
  728.  
  729. gestaltMachineIcon                EQU        'micn'                ; machine icon 
  730.  
  731. gestaltMiscAttr                    EQU        'misc'                ; miscellaneous attributes 
  732. gestaltScrollingThrottle        EQU        0                    ; true if scrolling throttle on 
  733. gestaltSquareMenuBar            EQU        2                    ; true if menu bar is square 
  734.  
  735. ;    The name gestaltMixedModeVersion for the 'mixd' selector is semantically incorrect.
  736. ;    The same selector has been renamed gestaltMixedModeAttr to properly reflect the
  737. ;    Inside Mac: PowerPC System Software documentation.  The gestaltMixedModeVersion
  738. ;    symbol has been preserved only for backwards compatibility.
  739. ;
  740. ;    Developers are forewarned that gestaltMixedModeVersion has a limited lifespan and
  741. ;    will be removed in a future release of the Interfaces.
  742. ;
  743. ;    For the first version of Mixed Mode, both meanings of the 'mixd' selector are
  744. ;    functionally identical.  They both return 0x00000001.  In subsequent versions
  745. ;    of Mixed Mode, however, the 'mixd' selector will not respond with an increasing
  746. ;    version number, but rather, with 32 attribute bits with various meanings.
  747. ;
  748.  
  749.  
  750. gestaltMixedModeVersion            EQU        'mixd'                ; returns version of Mixed Mode 
  751.  
  752. gestaltMixedModeAttr            EQU        'mixd'                ; returns Mixed Mode attributes 
  753. gestaltMixedModePowerPC            EQU        0                    ; true if Mixed Mode supports PowerPC ABI calling conventions 
  754. gestaltPowerPCAware                EQU        0                    ; old name for gestaltMixedModePowerPC 
  755. gestaltMixedModeCFM68K            EQU        1                    ; true if Mixed Mode supports CFM-68K calling conventions 
  756. gestaltMixedModeCFM68KHasTrap    EQU        2                    ; true if CFM-68K Mixed Mode implements _MixedModeDispatch (versions 1.0.1 and prior did not) 
  757. gestaltMixedModeCFM68KHasState    EQU        3                    ; true if CFM-68K Mixed Mode exports Save/RestoreMixedModeState 
  758.  
  759. gestaltQuickTimeConferencing    EQU        'mtlk'                ; returns QuickTime Conferencing version 
  760.  
  761. gestaltMemoryMapAttr            EQU        'mmap'                ; Memory map type 
  762. gestaltMemoryMapSparse            EQU        0                    ; Sparse memory is on 
  763.  
  764. gestaltMMUType                    EQU        'mmu '                ; mmu type 
  765. gestaltNoMMU                    EQU        0                    ; no MMU 
  766. gestaltAMU                        EQU        1                    ; address management unit 
  767. gestalt68851                    EQU        2                    ; 68851 PMMU 
  768. gestalt68030MMU                    EQU        3                    ; 68030 built-in MMU 
  769. gestalt68040MMU                    EQU        4                    ; 68040 built-in MMU 
  770. gestaltEMMU1                    EQU        5                    ; Emulated MMU type 1  
  771.  
  772. gestaltStdNBPAttr                EQU        'nlup'                ; standard nbp attributes 
  773. gestaltStdNBPPresent            EQU        0
  774. gestaltStdNBPSupportsAutoPosition EQU    1                    ; StandardNBP takes (-1,-1) to mean alert position main screen 
  775.  
  776. gestaltNotificationMgrAttr        EQU        'nmgr'                ; notification manager attributes 
  777. gestaltNotificationPresent        EQU        0                    ; notification manager exists 
  778.  
  779. gestaltNameRegistryVersion        EQU        'nreg'                ; NameRegistryLib version number, for System 7.5.2+ usage 
  780.  
  781. gestaltNuBusSlotCount            EQU        'nubs'                ; count of logical NuBus slots present 
  782.  
  783. gestaltOCEToolboxVersion        EQU        'ocet'                ; OCE Toolbox version 
  784. gestaltOCETB                    EQU        $0102                ; OCE Toolbox version 1.02 
  785. gestaltSFServer                    EQU        $0100                ; S&F Server version 1.0 
  786.  
  787. gestaltOCEToolboxAttr            EQU        'oceu'                ; OCE Toolbox attributes 
  788. gestaltOCETBPresent                EQU        $01                    ; OCE toolbox is present, not running 
  789. gestaltOCETBAvailable            EQU        $02                    ; OCE toolbox is running and available 
  790. gestaltOCESFServerAvailable        EQU        $04                    ; S&F Server is running and available 
  791. gestaltOCETBNativeGlueAvailable    EQU        $10                    ; Native PowerPC Glue routines are availible 
  792.  
  793. gestaltOpenFirmwareInfo            EQU        'opfw'                ; Open Firmware info 
  794.  
  795. gestaltOSAttr                    EQU        'os  '                ; o/s attributes 
  796. gestaltSysZoneGrowable            EQU        0                    ; system heap is growable 
  797. gestaltLaunchCanReturn            EQU        1                    ; can return from launch 
  798. gestaltLaunchFullFileSpec        EQU        2                    ; can launch from full file spec 
  799. gestaltLaunchControl            EQU        3                    ; launch control support available 
  800. gestaltTempMemSupport            EQU        4                    ; temp memory support 
  801. gestaltRealTempMemory            EQU        5                    ; temp memory handles are real 
  802. gestaltTempMemTracked            EQU        6                    ; temporary memory handles are tracked 
  803. gestaltIPCSupport                EQU        7                    ; IPC support is present 
  804. gestaltSysDebuggerSupport        EQU        8                    ; system debugger support is present 
  805.  
  806. gestaltOSTable                    EQU        'ostt'                ;  OS trap table base  
  807.  
  808. gestaltPCCard                    EQU        'pccd'                ;    PC Card attributes
  809. gestaltCardServicesPresent        EQU        0                    ;    PC Card 2.0 (68K) API is present
  810. gestaltPCCardFamilyPresent        EQU        1                    ;    PC Card 3.x (PowerPC) API is present
  811. gestaltPCCardHasPowerControl    EQU        2                    ;    PCCardSetPowerLevel is supported
  812. gestaltPCCardSupportsCardBus    EQU        3                    ;    CardBus is supported
  813.  
  814. gestaltProcClkSpeed                EQU        'pclk'                ; processor clock speed in hertz 
  815.  
  816. gestaltPCXAttr                    EQU        'pcxg'                ; PC Exchange attributes 
  817. gestaltPCXHas8and16BitFAT        EQU        0                    ; PC Exchange supports both 8 and 16 bit FATs 
  818. gestaltPCXHasProDOS                EQU        1                    ; PC Exchange supports ProDOS 
  819.  
  820. gestaltLogicalPageSize            EQU        'pgsz'                ; logical page size 
  821. ;     System 7.6 and later.  If gestaltScreenCaptureMain is not implemented,
  822. ;    PictWhap proceeds with screen capture in the usual way.
  823. ;
  824. ;    The high word of gestaltScreenCaptureMain is reserved (use 0).
  825. ;
  826. ;    To disable screen capture to disk, put zero in the low word.  To
  827. ;    specify a folder for captured pictures, put the vRefNum in the
  828. ;    low word of gestaltScreenCaptureMain, and put the directory ID in
  829. ;    gestaltScreenCaptureDir.
  830. ;
  831.  
  832.  
  833. gestaltScreenCaptureMain        EQU        'pic1'                ; Zero, or vRefNum of disk to hold picture 
  834. gestaltScreenCaptureDir            EQU        'pic2'                ; Directory ID of folder to hold picture 
  835.  
  836. gestaltGXPrintingMgrVersion        EQU        'pmgr'                ; QuickDraw GX Printing Manager Version
  837.  
  838. gestaltPopupAttr                EQU        'pop!'                ; popup cdef attributes 
  839. gestaltPopupPresent                EQU        0
  840.  
  841. gestaltPowerMgrAttr                EQU        'powr'                ; power manager attributes 
  842. gestaltPMgrExists                EQU        0
  843. gestaltPMgrCPUIdle                EQU        1
  844. gestaltPMgrSCC                    EQU        2
  845. gestaltPMgrSound                EQU        3
  846. gestaltPMgrDispatchExists        EQU        4
  847. gestaltPMgrSupportsAVPowerStateAtSleepWake EQU 5
  848. ; * PPC will return the combination of following bit fields.
  849. ; * e.g. gestaltPPCSupportsRealTime +gestaltPPCSupportsIncoming + gestaltPPCSupportsOutGoing
  850. ; * indicates PPC is cuurently is only supports real time delivery
  851. ; * and both incoming and outgoing network sessions are allowed.
  852. ; * By default local real time delivery is supported as long as PPCInit has been called.
  853.  
  854.  
  855. gestaltPPCToolboxAttr            EQU        'ppc '                ; PPC toolbox attributes 
  856. gestaltPPCToolboxPresent        EQU        $0000                ; PPC Toolbox is present  Requires PPCInit to be called 
  857. gestaltPPCSupportsRealTime        EQU        $1000                ; PPC Supports real-time delivery 
  858. gestaltPPCSupportsIncoming        EQU        $0001                ; PPC will deny incoming network requests 
  859. gestaltPPCSupportsOutGoing        EQU        $0002                ; PPC will deny outgoing network requests 
  860.  
  861. gestaltPowerPCProcessorFeatures    EQU        'ppcf'                ; Optional PowerPC processor features 
  862. gestaltPowerPCHasGraphicsInstructions EQU 0                    ; has fres, frsqrte, and fsel instructions 
  863. gestaltPowerPCHasSTFIWXInstruction EQU    1                    ; has stfiwx instruction 
  864. gestaltPowerPCHasSquareRootInstructions EQU 2                ; has fsqrt and fsqrts instructions 
  865. gestaltPowerPCHasDCBAInstruction EQU    3                    ; has dcba instruction 
  866. gestaltPowerPCHasVectorInstructions EQU    4                    ; has vector instructions 
  867. gestaltPowerPCHasDataStreams    EQU        5                    ; has dst, dstt, dstst, dss, and dssall instructions 
  868.  
  869. gestaltProcessorType            EQU        'proc'                ; processor type 
  870. gestalt68000                    EQU        1
  871. gestalt68010                    EQU        2
  872. gestalt68020                    EQU        3
  873. gestalt68030                    EQU        4
  874. gestalt68040                    EQU        5
  875.  
  876. gestaltSDPPromptVersion            EQU        'prpv'                ; OCE Standard Directory Panel
  877.  
  878. gestaltParityAttr                EQU        'prty'                ; parity attributes 
  879. gestaltHasParityCapability        EQU        0                    ; has ability to check parity 
  880. gestaltParityEnabled            EQU        1                    ; parity checking enabled 
  881.  
  882. gestaltQD3DVersion                EQU        'q3v '                ; Quickdraw 3D version in pack BCD
  883.  
  884. gestaltQD3DViewer                EQU        'q3vc'                ; Quickdraw 3D viewer attributes
  885. gestaltQD3DViewerPresent        EQU        0                    ; bit 0 set if QD3D Viewer is available
  886.     IF OLDROUTINENAMES THEN
  887.  
  888. gestaltQD3DViewerNotPresent        EQU        $00
  889. gestaltQD3DViewerAvailable        EQU        $01
  890.     ENDIF    ; OLDROUTINENAMES
  891.  
  892. gestaltQuickdrawVersion            EQU        'qd  '                ; quickdraw version 
  893. gestaltOriginalQD                EQU        $0000                ; original 1-bit QD 
  894. gestalt8BitQD                    EQU        $0100                ; 8-bit color QD 
  895. gestalt32BitQD                    EQU        $0200                ; 32-bit color QD 
  896. gestalt32BitQD11                EQU        $0201                ; 32-bit color QDv1.1 
  897. gestalt32BitQD12                EQU        $0220                ; 32-bit color QDv1.2 
  898. gestalt32BitQD13                EQU        $0230                ; 32-bit color QDv1.3 
  899. gestaltAllegroQD                EQU        $0250                ; Allegro QD OS 8.5 
  900.  
  901. gestaltQD3D                        EQU        'qd3d'                ; Quickdraw 3D attributes
  902. gestaltQD3DPresent                EQU        0                    ; bit 0 set if QD3D available
  903.     IF OLDROUTINENAMES THEN
  904.  
  905. gestaltQD3DNotPresent            EQU        $00
  906. gestaltQD3DAvailable            EQU        $01
  907.     ENDIF    ; OLDROUTINENAMES
  908.  
  909. gestaltGXVersion                EQU        'qdgx'                ; Overall QuickDraw GX Version
  910.  
  911. gestaltQuickdrawFeatures        EQU        'qdrw'                ; quickdraw features 
  912. gestaltHasColor                    EQU        0                    ; color quickdraw present 
  913. gestaltHasDeepGWorlds            EQU        1                    ; GWorlds can be deeper than 1-bit 
  914. gestaltHasDirectPixMaps            EQU        2                    ; PixMaps can be direct (16 or 32 bit) 
  915. gestaltHasGrayishTextOr            EQU        3                    ; supports text mode grayishTextOr 
  916. gestaltSupportsMirroring        EQU        4                    ; Supports video mirroring via the Display Manager. 
  917. gestaltQDHasLongRowBytes        EQU        5                    ; Long rowBytes supported in GWorlds 
  918.  
  919. gestaltQDTextVersion            EQU        'qdtx'                ; QuickdrawText version 
  920. gestaltOriginalQDText            EQU        $0000                ; up to and including 8.1 
  921. gestaltAllegroQDText            EQU        $0100                ; starting with 8.2 (?) 
  922.  
  923. gestaltQDTextFeatures            EQU        'qdtf'                ; QuickdrawText features 
  924. gestaltWSIISupport                EQU        0                    ; bit 0: WSII support included 
  925. gestaltSbitFontSupport            EQU        1                    ; sbit-only fonts supported 
  926. gestaltAntiAliasedTextAvailable    EQU        2                    ; capable of antialiased text 
  927. gestaltOFA2available            EQU        3                    ; OFA2 available 
  928. gestaltCreatesAliasFontRsrc        EQU        4                    ; "real" datafork font support 
  929. gestaltNativeType1FontSupport    EQU        5                    ; we have scaler for Type1 fonts 
  930.  
  931.  
  932. gestaltQuickTimeConferencingInfo EQU    'qtci'                ; returns pointer to QuickTime Conferencing information 
  933.  
  934. gestaltQuickTimeVersion            EQU        'qtim'                ; returns version of QuickTime 
  935. gestaltQuickTime                EQU        'qtim'                ; gestaltQuickTime is old name for gestaltQuickTimeVersion 
  936.  
  937. gestaltQuickTimeFeatures        EQU        'qtrs'
  938. gestaltPPCQuickTimeLibPresent    EQU        0                    ; PowerPC QuickTime glue library is present 
  939.  
  940. gestaltQTVRMgrAttr                EQU        'qtvr'                ; QuickTime VR attributes                               
  941. gestaltQTVRMgrPresent            EQU        0                    ; QTVR API is present                                   
  942. gestaltQTVRObjMoviesPresent        EQU        1                    ; QTVR runtime knows about object movies                
  943. gestaltQTVRCylinderPanosPresent    EQU        2                    ; QTVR runtime knows about cylindrical panoramic movies 
  944.  
  945. gestaltQTVRMgrVers                EQU        'qtvv'                ; QuickTime VR version                                  
  946.  
  947. gestaltPhysicalRAMSize            EQU        'ram '                ; physical RAM size 
  948.  
  949. gestaltRBVAddr                    EQU        'rbv '                ; RBV base address  
  950.  
  951. gestaltROMSize                    EQU        'rom '                ; rom size 
  952.  
  953. gestaltROMVersion                EQU        'romv'                ; rom version 
  954.  
  955. gestaltResourceMgrAttr            EQU        'rsrc'                ; Resource Mgr attributes 
  956. gestaltPartialRsrcs                EQU        0                    ; True if partial resources exist 
  957.  
  958. gestaltRealtimeMgrAttr            EQU        'rtmr'                ; Realtime manager attributes            
  959. gestaltRealtimeMgrPresent        EQU        0                    ; true if the Realtime manager is present     
  960.  
  961. gestaltSCCReadAddr                EQU        'sccr'                ; scc read base address  
  962.  
  963. gestaltSCCWriteAddr                EQU        'sccw'                ; scc read base address  
  964.  
  965. gestaltScrapMgrAttr                EQU        'scra'                ; Scrap Manager attributes 
  966. gestaltScrapMgrTranslationAware    EQU        0                    ; True if scrap manager is translation aware 
  967.  
  968. gestaltScriptMgrVersion            EQU        'scri'                ; Script Manager version number     
  969.  
  970. gestaltScriptCount                EQU        'scr#'                ; number of active script systems   
  971.  
  972. gestaltSCSI                        EQU        'scsi'                ; SCSI Manager attributes 
  973. gestaltAsyncSCSI                EQU        0                    ; Supports Asynchronous SCSI 
  974. gestaltAsyncSCSIINROM            EQU        1                    ; Async scsi is in ROM (available for booting) 
  975. gestaltSCSISlotBoot                EQU        2                    ; ROM supports Slot-style PRAM for SCSI boots (PDM and later) 
  976. gestaltSCSIPollSIH                EQU        3                    ; SCSI Manager will poll for interrupts if Secondary Interrupts are busy. 
  977.  
  978. gestaltControlStripAttr            EQU        'sdev'                ; Control Strip attributes 
  979. gestaltControlStripExists        EQU        0                    ; Control Strip is installed 
  980. gestaltControlStripVersionFixed    EQU        1                    ; Control Strip version Gestalt selector was fixed 
  981. gestaltControlStripUserFont        EQU        2                    ; supports user-selectable font/size 
  982. gestaltControlStripUserHotKey    EQU        3                    ; support user-selectable hot key to show/hide the window 
  983.  
  984. gestaltSDPStandardDirectoryVersion EQU    'sdvr'                ; OCE Standard Directory Panel
  985.  
  986. gestaltSerialAttr                EQU        'ser '                ; Serial attributes 
  987. gestaltHasGPIaToDCDa            EQU        0                    ; GPIa connected to DCDa
  988. gestaltHasGPIaToRTxCa            EQU        1                    ; GPIa connected to RTxCa clock input
  989. gestaltHasGPIbToDCDb            EQU        2                    ; GPIb connected to DCDb 
  990. gestaltHidePortA                EQU        3                    ; Modem port (A) should be hidden from users 
  991. gestaltHidePortB                EQU        4                    ; Printer port (B) should be hidden from users 
  992.  
  993. gestaltShutdownAttributes        EQU        'shut'                ; ShutDown Manager Attributes 
  994. gestaltShutdownHassdOnBootVolUnmount EQU 0                    ; True if ShutDown Manager unmounts boot & VM volume at shutdown time. 
  995.  
  996. gestaltNuBusConnectors            EQU        'sltc'                ; bitmap of NuBus connectors
  997.  
  998. gestaltSlotAttr                    EQU        'slot'                ; slot attributes  
  999. gestaltSlotMgrExists            EQU        0                    ; true is slot mgr exists  
  1000. gestaltNuBusPresent                EQU        1                    ; NuBus slots are present  
  1001. gestaltSESlotPresent            EQU        2                    ; SE PDS slot present  
  1002. gestaltSE30SlotPresent            EQU        3                    ; SE/30 slot present  
  1003. gestaltPortableSlotPresent        EQU        4                    ; Portable’s slot present  
  1004.  
  1005. gestaltFirstSlotNumber            EQU        'slt1'                ; returns first physical slot 
  1006.  
  1007. gestaltSoundAttr                EQU        'snd '                ; sound attributes 
  1008. gestaltStereoCapability            EQU        0                    ; sound hardware has stereo capability 
  1009. gestaltStereoMixing                EQU        1                    ; stereo mixing on external speaker 
  1010. gestaltSoundIOMgrPresent        EQU        3                    ; The Sound I/O Manager is present 
  1011. gestaltBuiltInSoundInput        EQU        4                    ; built-in Sound Input hardware is present 
  1012. gestaltHasSoundInputDevice        EQU        5                    ; Sound Input device available 
  1013. gestaltPlayAndRecord            EQU        6                    ; built-in hardware can play and record simultaneously 
  1014. gestalt16BitSoundIO                EQU        7                    ; sound hardware can play and record 16-bit samples 
  1015. gestaltStereoInput                EQU        8                    ; sound hardware can record stereo 
  1016. gestaltLineLevelInput            EQU        9                    ; sound input port requires line level 
  1017.                                                             ; the following bits are not defined prior to Sound Mgr 3.0 
  1018. gestaltSndPlayDoubleBuffer        EQU        10                    ; SndPlayDoubleBuffer available, set by Sound Mgr 3.0 and later 
  1019. gestaltMultiChannels            EQU        11                    ; multiple channel support, set by Sound Mgr 3.0 and later 
  1020. gestalt16BitAudioSupport        EQU        12                    ; 16 bit audio data supported, set by Sound Mgr 3.0 and later 
  1021.  
  1022. gestaltSplitOSAttr                EQU        'spos'
  1023. gestaltSplitOSBootDriveIsNetworkVolume EQU 0                ; the boot disk is a network 'disk', from the .LANDisk drive. 
  1024. gestaltSplitOSAware                EQU        1                    ; the system includes the code to deal with a split os situation. 
  1025. gestaltSplitOSEnablerVolumeIsDifferentFromBootVolume EQU 2    ; the active enabler is on a different volume than the system file. 
  1026. gestaltSplitOSMachineNameSetToNetworkNameTemp EQU 3            ; The machine name was set to the value given us from the BootP server 
  1027.  
  1028. gestaltSMPSPSendLetterVersion    EQU        'spsl'                ; OCE StandardMail
  1029.  
  1030. gestaltSpeechRecognitionAttr    EQU        'srta'                ; speech recognition attributes 
  1031. gestaltDesktopSpeechRecognition    EQU        1                    ; recognition thru the desktop microphone is available 
  1032. gestaltTelephoneSpeechRecognition EQU    2                    ; recognition thru the telephone is available 
  1033.  
  1034. gestaltSpeechRecognitionVersion    EQU        'srtb'                ; speech recognition version (0x0150 is the first version that fully supports the API) 
  1035.  
  1036. gestaltSoftwareVendorCode        EQU        'srad'                ; Returns system software vendor information 
  1037. gestaltSoftwareVendorApple        EQU        'Appl'                ; System software sold by Apple 
  1038. gestaltSoftwareVendorLicensee    EQU        'Lcns'                ; System software sold by licensee 
  1039.  
  1040. gestaltStandardFileAttr            EQU        'stdf'                ; Standard File attributes 
  1041. gestaltStandardFile58            EQU        0                    ; True if selectors 5-8 (StandardPutFile-CustomGetFile) are supported 
  1042. gestaltStandardFileTranslationAware EQU    1                    ; True if standard file is translation manager aware 
  1043. gestaltStandardFileHasColorIcons EQU    2                    ; True if standard file has 16x16 color icons 
  1044. gestaltStandardFileUseGenericIcons EQU    3                    ; Standard file LDEF to use only the system generic icons if true 
  1045. gestaltStandardFileHasDynamicVolumeAllocation EQU 4            ; True if standard file supports more than 20 volumes 
  1046.  
  1047. gestaltSysArchitecture            EQU        'sysa'                ; Native System Architecture 
  1048. gestalt68k                        EQU        1                    ; Motorola MC68k architecture 
  1049. gestaltPowerPC                    EQU        2                    ; IBM PowerPC architecture 
  1050.  
  1051. gestaltSystemUpdateVersion        EQU        'sysu'                ; System Update version 
  1052.  
  1053. gestaltSystemVersion            EQU        'sysv'                ; system version
  1054.  
  1055. gestaltToolboxTable                EQU        'tbtt'                ;  OS trap table base  
  1056.  
  1057. gestaltTextEditVersion            EQU        'te  '                ; TextEdit version number 
  1058. gestaltTE1                        EQU        1                    ; TextEdit in MacIIci ROM 
  1059. gestaltTE2                        EQU        2                    ; TextEdit with 6.0.4 Script Systems on MacIIci (Script bug fixes for MacIIci) 
  1060. gestaltTE3                        EQU        3                    ; TextEdit with 6.0.4 Script Systems all but MacIIci 
  1061. gestaltTE4                        EQU        4                    ; TextEdit in System 7.0 
  1062. gestaltTE5                        EQU        5                    ; TextWidthHook available in TextEdit 
  1063.  
  1064. gestaltTE6                        EQU        6                    ; TextEdit with integrated TSMTE and improved UI 
  1065.  
  1066. gestaltTEAttr                    EQU        'teat'                ; TextEdit attributes 
  1067. gestaltTEHasGetHiliteRgn        EQU        0                    ; TextEdit has TEGetHiliteRgn 
  1068. gestaltTESupportsInlineInput    EQU        1                    ; TextEdit does Inline Input 
  1069. gestaltTESupportsTextObjects    EQU        2                    ; TextEdit does Text Objects 
  1070. gestaltTEHasWhiteBackground        EQU        3                    ; TextEdit supports overriding the TERec's background to white 
  1071.  
  1072. gestaltTeleMgrAttr                EQU        'tele'                ; Telephone manager attributes 
  1073. gestaltTeleMgrPresent            EQU        0
  1074. gestaltTeleMgrPowerPCSupport    EQU        1
  1075. gestaltTeleMgrSoundStreams        EQU        2
  1076. gestaltTeleMgrAutoAnswer        EQU        3
  1077. gestaltTeleMgrIndHandset        EQU        4
  1078. gestaltTeleMgrSilenceDetect        EQU        5
  1079. gestaltTeleMgrNewTELNewSupport    EQU        6
  1080.  
  1081. gestaltTermMgrAttr                EQU        'term'                ; terminal mgr attributes 
  1082. gestaltTermMgrPresent            EQU        0
  1083. gestaltTermMgrErrorString        EQU        2
  1084.  
  1085. gestaltThreadMgrAttr            EQU        'thds'                ; Thread Manager attributes 
  1086. gestaltThreadMgrPresent            EQU        0                    ; bit true if Thread Mgr is present 
  1087. gestaltSpecificMatchSupport        EQU        1                    ; bit true if Thread Mgr supports exact match creation option 
  1088. gestaltThreadsLibraryPresent    EQU        2                    ; bit true if Thread Mgr shared library is present 
  1089.  
  1090. gestaltTimeMgrVersion            EQU        'tmgr'                ; time mgr version 
  1091. gestaltStandardTimeMgr            EQU        1                    ; standard time mgr is present 
  1092. gestaltRevisedTimeMgr            EQU        2                    ; revised time mgr is present 
  1093. gestaltExtendedTimeMgr            EQU        3                    ; extended time mgr is present 
  1094.  
  1095. gestaltTSMTEVersion                EQU        'tmTV'
  1096. gestaltTSMTE1                    EQU        $0100                ; Original version of TSMTE 
  1097. gestaltTSMTE15                    EQU        $0150                ; System 8.0 
  1098. gestaltTSMTE152                    EQU        $0152                ; System 8.2 
  1099.  
  1100. gestaltTSMTEAttr                EQU        'tmTE'
  1101. gestaltTSMTEPresent                EQU        0
  1102. gestaltTSMTE                    EQU        0                    ; gestaltTSMTE is old name for gestaltTSMTEPresent 
  1103.  
  1104. gestaltALMAttr                    EQU        'trip'                ; Settings Manager attributes (see also gestaltALMVers) 
  1105. gestaltALMPresent                EQU        0                    ; bit true if ALM is available 
  1106. gestaltALMHasSFGroup            EQU        1                    ; bit true if Put/Get/Merge Group calls are implmented 
  1107. gestaltALMHasCFMSupport            EQU        2                    ; bit true if CFM-based modules are supported 
  1108. gestaltALMHasRescanNotifiers    EQU        3                    ; bit true if Rescan notifications/events will be sent to clients 
  1109.  
  1110. gestaltALMHasSFLocation            EQU        1
  1111.  
  1112. gestaltTSMgrVersion                EQU        'tsmv'                ; Text Services Mgr version, if present 
  1113. gestaltTSMgr15                    EQU        $0150
  1114.  
  1115. gestaltTSMgrAttr                EQU        'tsma'                ; Text Services Mgr attributes, if present 
  1116. gestaltTSMDisplayMgrAwareBit    EQU        0                    ; TSM knows about display manager 
  1117. gestaltTSMdoesTSMTEBit            EQU        1                    ; TSM has integrated TSMTE 
  1118.  
  1119. gestaltSpeechAttr                EQU        'ttsc'                ; Speech Manager attributes 
  1120. gestaltSpeechMgrPresent            EQU        0                    ; bit set indicates that Speech Manager exists 
  1121. gestaltSpeechHasPPCGlue            EQU        1                    ; bit set indicates that native PPC glue for Speech Manager API exists 
  1122.  
  1123. gestaltTVAttr                    EQU        'tv  '                ; TV version 
  1124. gestaltHasTVTuner                EQU        0                    ; supports Philips FL1236F video tuner 
  1125. gestaltHasSoundFader            EQU        1                    ; supports Philips TEA6330 Sound Fader chip 
  1126. gestaltHasHWClosedCaptioning    EQU        2                    ; supports Philips SAA5252 Closed Captioning 
  1127. gestaltHasIRRemote                EQU        3                    ; supports CyclopsII Infra Red Remote control 
  1128. gestaltHasVidDecoderScaler        EQU        4                    ; supports Philips SAA7194 Video Decoder/Scaler 
  1129. gestaltHasStereoDecoder            EQU        5                    ; supports Sony SBX1637A-01 stereo decoder 
  1130. gestaltHasSerialFader            EQU        6                    ; has fader audio in serial with system audio 
  1131. gestaltHasFMTuner                EQU        7                    ; has FM Tuner from donnybrook card 
  1132. gestaltHasSystemIRFunction        EQU        8                    ; Infra Red button function is set up by system and not by Video Startup 
  1133. gestaltIRDisabled                EQU        9                    ; Infra Red remote is not disabled. 
  1134. gestaltINeedIRPowerOffConfirm    EQU        10                    ; Need IR power off confirm dialog. 
  1135. gestaltHasZoomedVideo            EQU        11                    ; Has Zoomed Video PC Card video input. 
  1136.  
  1137. gestaltUSBAttr                    EQU        'usb '                ; USB Attributes 
  1138. gestaltUSBPresent                EQU        0                    ; USB Support available 
  1139. gestaltUSBHasIsoch                EQU        1                    ; USB Isochronous features available 
  1140.  
  1141. gestaltUSBVersion                EQU        'usbv'                ; USB version 
  1142.  
  1143. gestaltVersion                    EQU        'vers'                ; gestalt version 
  1144. gestaltValueImplementedVers        EQU        5                    ; version of gestalt where gestaltValue is implemented. 
  1145.  
  1146. gestaltVIA1Addr                    EQU        'via1'                ; via 1 base address  
  1147.  
  1148. gestaltVIA2Addr                    EQU        'via2'                ; via 2 base address  
  1149.  
  1150. gestaltVMAttr                    EQU        'vm  '                ; virtual memory attributes 
  1151. gestaltVMPresent                EQU        0                    ; true if virtual memory is present 
  1152. gestaltVMHasLockMemoryForOutput    EQU        1                    ; true if LockMemoryForOutput is available 
  1153. gestaltVMFilemappingOn            EQU        3                    ; true if filemapping is available 
  1154. gestaltVMHasPagingControl        EQU        4                    ; true if MakeMemoryResident, MakeMemoryNonResident, FlushMemory, and ReleaseMemoryData are available 
  1155.  
  1156. gestaltVMInfoType                EQU        'vmin'                ; Indicates how the Finder should display information about VM in 
  1157.                                                             ; the Finder about box. 
  1158. gestaltVMInfoSizeStorageType    EQU        0                    ; Display VM on/off, backing store size and name 
  1159. gestaltVMInfoSizeType            EQU        1                    ; Display whether VM is on or off and the size of the backing store 
  1160. gestaltVMInfoSimpleType            EQU        2                    ; Display whether VM is on or off 
  1161. gestaltVMInfoNoneType            EQU        3                    ; Display no VM information 
  1162.  
  1163. gestaltVMBackingStoreFileRefNum    EQU        'vmbs'                ; file refNum of virtual memory's main backing store file (returned in low word of result) 
  1164.  
  1165.  
  1166.  
  1167. gestaltALMVers                    EQU        'walk'                ; Settings Manager version (see also gestaltALMAttr) 
  1168.  
  1169. gestaltTranslationAttr            EQU        'xlat'                ; Translation Manager attributes 
  1170. gestaltTranslationMgrExists        EQU        0                    ; True if translation manager exists 
  1171. gestaltTranslationMgrHintOrder    EQU        1                    ; True if hint order reversal in effect 
  1172. gestaltTranslationPPCAvail        EQU        2
  1173. gestaltTranslationGetPathAPIAvail EQU    3
  1174.  
  1175. gestaltExtToolboxTable            EQU        'xttt'                ; Extended Toolbox trap table base 
  1176.  
  1177. ; WorldScript settings;
  1178.  
  1179. gestaltWorldScriptIIVersion        EQU        'doub'
  1180. gestaltWorldScriptIIAttr        EQU        'wsat'
  1181. gestaltWSIICanPrintWithoutPrGeneralBit EQU 0                ; bit 0 is on if WS II knows about PrinterStatus callback 
  1182.  
  1183.  
  1184.  
  1185.     ENDIF ; __GESTALT__ 
  1186.  
  1187.